#  网站统计大数据
#  2017-12-27 20:00启动
#  参与人：壮志凌云

from __future__ import print_function
from pyspark.sql import SparkSession
from pyspark.sql.functions import sum,row_number,desc
from pyspark.sql import Window
import json

if __name__ == "__main__":
    spark = SparkSession \
        .builder \
        .appName("网站统计大数据项目") \
        .getOrCreate()

#  直接读取json文件，printSchema发现表头过大，show()程序异常
#  暂未使用Spark api正常解析数据，放弃。
#  截取部分json数据，可正常printSchema、show
#    WebData = spark.read.json("main_pv.json")


#  采用python库函数，自行解析json，数据读取正常
    jsonData = spark.sparkContext.textFile("main_pv.json")
    WebData = jsonData.map(json.loads).toDF()

    WebData.printSchema()

    WebData.show()

    WebData.createOrReplaceTempView("people")

    teenagerNamesDF = spark.sql("SELECT * FROM people LIMIT 50")
    teenagerNamesDF.show()

    spark.stop()
